Non-transitory computer-readable recording medium storing computer-executable instructions for information processing device, and method of controlling information processing device

ABSTRACT

Non-transitory computer-readable recording medium stores computer-executable instructions which cause, when executed, a controller of an information processing device to obtain a list of printers registered with an operating system installed to the information processing device, obtaining a list of print programs installed in the information processing device, store identifiers of the list of printers and the list of the print programs as obtained in a memory, detect whether a first user operation is input through an inputting device of the information processing device, when input of the first user operation is detected, extract one of the printers in the list of printers and print programs in the list of print programs stored in the memory and setting the extracted one of the printers and the print programs to the output destination, and when the output destination is one of the print programs, start the print program.

CROSS-REFERENCE TO RELATED APPLICATIONS

This application is a continuation of U.S. patent application Ser. No.16/367,652 filed Mar. 28, 2019 which claims priority under 35 U.S.C. §119 from Japanese Patent Application No. 2018-066688 filed on Mar. 30,2018. The entire subject matter of the application is incorporatedherein by reference.

BACKGROUND Technical Field

The present disclosures relate to an application program configured toreceive a print instruction. More particularly, the present disclosuresrelate to selection of printers through the application program.

Related Art

In a field of an information processing device which is provided withinput devices such as a keyboard and a touch panel, there has been knowna technique in which, when a particular user operation is detected, aparticular process associated with the particular user operation isexecuted. For example, there has been known an information processingdevice in which a plurality of shortcut keys such as a shortcut key forswitching a selection status of an application program are defined.

SUMMARY

When a printer job is transmitted from the information processing deviceto the printer, an operation to select a printer which is an outputdestination becomes necessary. When a printer which is not supported bythe operating system of the information processing device is to beselected as the output destination, a dedicated print program for theprinter should be started. Such an operation is troublesome for theuser. There is known an information processing device which isconfigured to switch a selection status of currently running applicationwith use of a shortcut key. However, in such an information processingdevice, a selection operation to select a printer which is to output theprint job has not been suggested conventionally and an improvement isdesired.

According to the present disclosures, there is provided a non-transitorycomputer-readable recording medium for an information processing devicehaving a memory and a controller, the recoding medium storingcomputer-executable instructions which cause, when executed, thecontroller to perform a printer obtaining process of obtaining a list ofprinters registered with an operating system installed to theinformation processing device, a program obtaining process of obtaininga list of print programs installed in the information processing device,a storing process of storing identifiers of the printers listed in thelist of printers obtained in the printer obtaining process andidentifiers of the print programs listed in the list of the printprograms obtained in the program obtaining process in the memory, afirst detecting process of detecting whether a first user operation isinput through an inputting device of the information processing device.When the controller detects input of the first user operation in thefirst detecting process, the instructions causes the controller toperform an output destination changing process of extracting one of theprinters in the list of printers and print programs in the list of printprograms stored in the memory and set the extracted one of the printersand the print programs to the output destination, while when the outputdestination set in the output destination changing process is one of theprint programs installed in the information processing device, theinstructions cause the controller to start the print program.

According to aspects of the present disclosures, there is provided amethod of controlling an information processing device having a memory,including obtaining a list of printers registered with an operatingsystem installed to the information processing device, obtaining a listof print programs installed in the information processing device,storing identifiers of the printers listed in the list of printers asobtained and identifiers of the print programs listed in the list of theprint programs as obtained in the memory, detecting whether a first useroperation is input through an inputting device of the informationprocessing device, when input of the first user operation is detected,extracting one of the printers in the list of printers and printprograms in the list of print programs stored in the memory and settingthe extracted one of the printers and the print programs to the outputdestination, and when the output destination is one of the printprograms installed in the information processing device, starting theprint program.

BRIEF DESCRIPTION OF EMBODIMENTS

FIG. 1 is a block diagram schematically showing a print system accordingto a first embodiment of the present disclosures.

FIG. 2 illustrates a program for printing of an information processingdevice.

FIG. 3 illustrates two kinds of printing paths.

FIG. 4 is a sequential chart illustrating a printing operation.

FIG. 5 shows an example of an output destination changing screen.

FIG. 6 shows an example of a print screen.

FIG. 7 is a flowchart illustrating an output destination changingprocess.

FIG. 8 is a flowchart illustrating a printing process.

FIGS. 9A and 9B show a sequential chart illustrating a printingoperation of a print system according to a second embodiment of thepresent disclosure.

FIG. 10 is a flowchart illustrating an output destination changingprocess.

DETAILED DESCRIPTION OF THE EMBODIMENTS

Hereinafter, referring to the accompanying drawings, an applicationprogram embodying aspects of the present disclosures will be described.

First Embodiment

Hereinafter, a print system including 100 a printing device and aninformation processing device, which are communicatable with each other,according to a first embodiment will be described.

As shown in FIG. 1, the print system 100 according to the firstembodiment has multiple printers 1A, 1B, 1C, 1D and PC (s personalcomputer) 2, which are communicatably connected with each other. Each ofthe printers 1A, 1B, 1C and 1D is configured to perform printing on amedium which is an objective medium. Examples of such a device is alabel printer, a page printer, a copier and an MFP (multi-functionperipheral). In the following description, the printers 1A, 1B, 1C and1D are collectively referred to as a printer 1.

The PC 2 is a device configured to generate and edit image data which issubject to be printed by the printer 1, and to transmit a printinstruction and image data to the printer. The PC 2 is an example of aninformation processing device. It is noted that the number of theprinter 1 and the number of the PC 2 constituting the print system 100may be one or more, respectively.

As shown in FIG. 1, the printer 1 has a controller 11, an image formingsection 12, an operation panel 13 and a network interface 14. Thecontroller 11 includes a CPU and a memory, and controls components ofthe printer 1. It should be noted that the controller 11 in FIG. 1 is acollective name including software and software used for controlling theprinter 1.

The image forming section 12 is a component for printing images on theobjective medium. An image forming method employed in the image formingsection 12 can be an electrophotographic imaging method, an inkjetprinting method or any other method. The operation panel 13 includes,for example, a touch panel, which is configured to receive a user inputand display information. The operation panel 13 may include variousdisplay lamps and buttons. The network interface 14 is an interface fora wireless communication to communicate with the PC 2.

The PC 2 has, as shown in FIG. 1, a CPU 21, a ROM 22, a RAM 23, anon-volatile memory 24, a keyboard 25, a mouse 28, a display 26 and anetwork interface 27. The RAM 23 is an example of a memory. The keyboardand the mouse 28 are examples of an inputting device. The display 26 isan example of a displaying device.

The ROM 22 stores a startup program to start up the PC 2 and the like.The RAM 23 is used as a work area and a storage area to temporarilystore data when respective processes are performed. The non-volatilememory 24 is configured by, for example, an HDD and/or flash memory, andstores programs and data. For example, the non-volatile memory 24 storesan application program for editing an image (i.e., an image editing APP)41, a dedicated print control APP 43 and an operation system (OS) 44.The image editing APP 41 is an example of an application program. Thededicated print control APP 43 is an example of a print program.

The CPU 21 performs respective processes in accordance with programsretrieved from the ROM 22 or the non-volatile memory 24. The keyboard 25has a plurality of keys and receives input of characters or the like asrespective keys are operated.

The keyboard 25 receives the user input of instructions to cause the OS44 or a program to perform a particular process when a particular key isdepressed or particular keys are depressed simultaneously. For example,the keyboard 25 can receive an input operation of shortcut keys.

The mouse 28 is an input device with which the user indicates a movingamount and a moving direction. The display 26 displays information. Thenetwork interface 27 is hardware configured to communicate with theprinter 1.

According to the print system 100, the PC 2 and printer 1 perform awireless communication compliant with Wi-Fi® standard through a commonaccess point 3. That is, both the network interfaces 14 and 27 areinterfaces enabling the wireless communication compliant with the Wi-Fistandard. More particularly, the network interfaces 14 and 27 areinterfaces enabling the wireless communication compliant with IEEE802.11 standard and a standard corresponding the IEEE 802.11 standard.It is noted that the communication mode according to the presentembodiment is only an example and aspects of the present disclosureshould not be limited to the configuration of the present embodiment.For example, the PC 2 and the printer may communicate with each otherwith the wireless communication directly established therebetween, notthrough the access point 3, or with a wired communication.

In the non-volatile memory 24 of the PC 2, as shown in FIG. 2, the OS44, the image editing APP 41, the dedicated print control APP 43 and thelike can be stored. Further, in the OS 44 of the PC 2, a general purposeprint controlling program 45 and a communication program 46 areimplemented. It is noted that, in FIG. 2, directions in which respectivepieces of data flow are indicated by arrows with solid lines.

The image editing APP 41 is a program having functions of receivinguser's instructions and displaying images, editing and storing images.The image editing APP 41 is a program used for editing images,generating and editing of an image file of an edited image. The imagefile is data file to be printed out on a printing medium. The imageediting APP 41 also has functions of receiving a print instruction and asetting regarding an output destination when printing.

The dedicated print control APP 43 is a program having functions ofreceiving a print instruction, generating raster data by rasterizingimage data contained in a image file, transmitting the generatedrasterized data to the printer 1 through the communication program 46.The dedicated print control APP 43 is a dedicated program compliant onlywith a printing device of a particular model, and does not compliantwith printing devices other than the devices of the particular model(e.g., printing devices of a make different from the manufacture of theprinting device of the particular model).

The dedicated print control APP 43 according to the present embodimentis a dedicated program for controlling the printer 1. Accordingly, thededicated print control APP 43 generates the rasterized data compliantwith all of detailed print settings and the printer can print out.

The general purpose print control program 45 is a program havingfunctions of generating standard data for printing compliant with aparticular printing standard and transmitting the generated standarddata to the printer 1 through the communication program 46. The generalpurpose print control program 45 is a standard program presented by theOS 44 to realize a print controlling function. The standard datatransmitted by the general purpose control program 45 is data compliantwith a standard appropriate for general purpose rasterizing process butnot rasterized.

The general purpose print control program 45 is a general purposeprogram compliant with various types of printing devices supporting theparticular print standard. Therefore, if a printing device has afunction supporting the general purpose print control program 45, theprinting device can perform printing based on the standard dataregardless of the manufacturer of the printing device. Since the generalpurpose print control program 45 is a general purpose program compliantwith a plurality of models, the receivable print settings are limited togeneral ones. Therefore, the general purpose print control program 45does not necessarily accept all the print settings executable by theprinter 1. As printing systems making use of the general purpose printcontrol program 45, AirPrint® and Mopria® are known.

When the image data subject to be printed is delivered to the dedicatedprint control APP 43, the image editing APP 41 uses an image file, andadds all the designated print settings. On the other hand, when theimage data subject to be printed is delivered to the general purposeprint control program 45, the image editing APP 41 uses data file whichis generated by modifying the image file to have a format appropriatefor generalization. In this case, the image editing APP 41 adds onlygeneral print settings.

The communication program 46 is a program having a function ofcontrolling the network interface 27 to perform a communication with acommunication counterpart device. For example, the dedicated printcontrol APP 43 registers the generated rasterized data with a spooler ofthe OS 44. The communication program 46 of the PC 2 transmits the dataregistered with the spooler to the printer 1 through the networkinterface 27. The communication program 45 is also a standard programprovided by the OS 44. It is noted that a part of the communicationprogram 46 may be stored in the ROM 22.

The print system 100 according to the embodiment, as shown in FIG. 3,there are two kinds of paths as printing paths in which the printer 1 iscaused to perform printing. The two printing paths include a first pathin which the PC 2 performs the rasterizing process, and a second path inwhich the printer 1 performs the rasterizing process.

When causing the printer 1 to perform printing in the first path, asshown in FIG. 3, the image editing APP 41 starts up the dedicated printcontrol APP 43 and delivers an image file to the dedicated print controlAPP 43. The dedicated print control APP 43 performs the rasterizingprocess to rasterize the image data contained in the image file, andtransmits the rasterized data to the printer 1 through the communicationprogram 46 of the OS 44. The printer 1 receives the rasterized data inwhich the image data has been rasterized and performs printing based onthe received rasterized data. In the first path, the PC 2 rasterizes theimage data subject to be printed with use of the dedicated print controlAPP 43 shown in FIG. 2.

Since the dedicated print control APP 43 is used, the first pathcorresponds to all the print settings applicable to the printer 1. Thededicated print control APP 43 is not included in the OS 44. Therefore,when printing in accordance with the first printing path is performed,the PC 2 does not use the print control function (e.g., the generalpurpose print control program 45).

When causing the printer 1 to perform printing in the second path, asshown in FIG. 3, the image editing APP 41 delivers the general purposeimage file to the OS 44. The OS 44 performs standardization of imagedata contained in the general purpose image file in a standardizationprocess, and transmits the standardized data to the printer 1. Theprinter 1 performs the general purpose rasterizing process forrasterizing the standardized data, and perform printing, in the generalpurpose rasterizing process, based on the rasterized data. That is, inthe second path, a printer capable of performing the general purposerasterizing process. In the second path, the PC 2 standardizes theobjective data with use of the general purpose print control programshown in FIG. 2.

Since the general purpose print control program 45 which is the printcontrol function contained in the OS 44, the second path is notnecessarily compliant with all the print settings compatible with theprinter 1. For example, the general purpose print control program 45 isnot compatible with high-resolution print settings corresponding to onlya particular model. Therefore, for printing in the second path, theresolution compatible to many models, that is, print settings other thanthe high resolution is used.

As described above, in the first path and the second path, rasterizationof the objective image data is performed by different processingentities, respectively. That is, in the first path, the rasterization isperformed by the PC 2, while the rasterization is performed by theprinter 1 in the second path. Further, the first path and the secondpath employ different rasterization algorithms, and there is apossibility that processing results are different depending on therasterization algorithms used. Specifically, in the first path, therasterization compliant with detailed print settings are performed,while, in the second path, the rasterization is performed such that someof the print settings are restricted. Further, in the first and secondpaths, types and formats of data transmitted from the PC 2 to theprinter 1 are different. Therefore, even if printing is performed basedon the same image file, different printing results may be obtained.

The image editing APP 41 according to the present embodiment defines ashortcut key for instructing change of the output destination, and notonly the printer 1 but also the dedicated print control APP 43 areincluded as a changing target of the output destination. For example,when the printer 1A does not support the general purpose rasterizingprocess, while the printers 1B-1D support the general purposerasterizing process, the image editing APP 41 can cause any of printers1B-1D to execute a print job in the second path, but cannot cause theprinter 1A to execute the print job in the second path. Therefore, whenexecuting printing with use of the printer 1A, the image editing APP 41needs to start up the dedicated print control APP 43 corresponding tothe printer 1A, and cause the printer 1A to execute the print job withuse of the first path. In general, the dedicated print control APP 43 isstarted when the user inputs a startup instruction of the dedicatedprint control APP 43 (e.g., by clicking a startup icon displayed on adesktop).

In addition to the above-described startup method, the image editing APP41 also supports another startup method. That is, the image editing APP41 defines a shortcut key associated with a process of changing theoutput destination. The image editing APP 41 stores a list of candidatesof the output destination, and every time when the shortcut key isoperated, the candidates of the output destination is selectivelyswitched sequentially. It is noted that not only the printers 1B-1D butalso the dedicated print control APP 43 installed in the PC 2 areincluded as one of the candidates of the output destination. Therefore,according to the image editing APP 41, by operating the shortcut key,the output destination can be changed to the dedicated print control APP43 without operating the startup icon on the desktop. Then, when theprint instruction is input in a state where the output destination isset to the dedicated print control APP 43, the image editing APP 41starts up the dedicated print control APP 43.

The shortcut key is set, for example, by combining a print executionshortcut key used to input a command instructing to start printing withanother key. That is, the shortcut key defined by the image editing APP41 includes the print execution shortcut key so that the user can easilyrecognize that processes executed by operating the shortcut keys areprint-related processes. For example, when the shortcut key forexecuting printing is “Command”+“P”, the image editing APP 41 definesthat a combination of “Command”+“Alt”+“P” as a shortcut key forinstructing change of the output destination. It is noted that “A”+“B”means that an “A” key and a “B” key are operated simultaneously. Asimultaneous operation of the “Command” key, the “Alt” key and the “P”key (i.e., “Command”+“Alt”+“P” is an example of a first user operation.A simultaneous operation of the “Command” key and the “P” key (i.e.,“Command”+“P”) is an example of a second user operation, and anoperation of “Alt” key is a third user operation.

Next, a printing operation by the printing system 100 according to thepresent embodiment will be described, referring to FIGS. 4-6. In thefollowing description, it is assumed that the printer 1A does notsupport the general purpose rasterizing process, and is not registeredwith the OS 44. It is further assumed that the printers 1B-1D supportthe rasterizing process and are registered with the OS 44. It is alsoassumed that the dedicated print control APP 43 corresponds to theprinter 1A.

When the user intends to make the printing system 100 perform printingbased on the image file, the user starts up the image editing APP 41 onthe PC 2 and edits image data. As shown in FIG. 4, when the simultaneousoperation of “Command”, “Alt” and “P” keys of the keyboard 25 aredetected when the image editing APP 41 is in an active state (S1), theimage editing APP 41 requests the OS 44 to transmit a list of printers 1registered with the OS 44 (S2). When the list of the printers 1 areobtained from the OS 44 (S3), the image editing APP 41 obtains a list ofprint programs installed in the PC 2 (S4). It is noted that, in theprint programs, the dedicated print control APP 43 is included.

Thereafter, the image editing APP 41 stores the list of the printers 1obtained in S3 and the list of the print programs obtained in S4 in theRAM 23 (S5). It is noted that such lists may be stored in thenon-volatile memory 24. Thereafter, the image editing APP 41 receiveschange of the output destination (S6). Change of the output destinationis performed by automatically selecting, from among the list of theprinters 1 obtained in S3 and the list of the print programs obtained inS4, a printer 1 or a print program.

For example, change of the output destination is displayed on an outputdestination changing screen 50 as shown in FIG. 5. In an outputdestination list 51, the printers 1 registered with the OS 44 and theapplications installed in the PC 2 are listed. For example, an iconindicating the dedicated print control APP 43 is displayed in an area51A, an icon indicating the printer 1B is shown in an area 51B, an iconindicating the printer 1C is shown in an area 51C and an icon indicatingthe printer 1D is shown in an area 51D. A selection cursor 53 is forindicating the output destination set to the image editing APP 41 fromamong the output destinations in the output destination list 51. Everytime when the simultaneous operation of the “Command”, “Alt” and “P”keys of the keyboard 25 is detected, the image editing APP 41 moves theselection cursor 53 sequentially so that the output destination isswitched among the icons indicated in the output destination list 51. Asdescribed above, when the simultaneous operation of the “Command”, “Alt”and “P” keys of the keyboard 25 is detected, the image editing APP 41extracts one output destination from among the plurality of outputdestinations in the output destination list 51 and sets the same to thecurrent output destination, thereby the output destination beingchanged. It is noted that the above configuration may be modified suchthat only the currently selected output destination is displayed on theoutput destination changing screen 50 without displaying the outputdestination list 51.

It is noted that S4 in FIG. 4 can be executed before S2. When the listof the printers 1 and the list of the print programs have already beenobtained and stored in the RAM 23, the process of S2-S5 may be omitted.The process in S2-S5 may be executed when the image editing APP 41 isstarted up. In such a case, after execution of S1, only S6 is executed.When only one printer or one printing program has been stored in the RAM23 in S5, the image editing APP 41 does not change the outputdestination.

After the output destination has been changed, by detecting thesimultaneous operation of the “Command” and “P” keys of the keyboard 25with the image editing APP 41 being in an active state, the imageediting APP 41 displays a print screen 60 as shown in FIG. 6 on thedisplay 26. On the print screen 60, for example, an output destinationdisplaying field 61, a print button 63, a cancel button 64 and a printsetting field 65 are displayed.

On the output destination displaying field 61, the output destinationcurrently selected by the image editing APP 41 is displayed. In theoutput destination displaying field 61, a change button 66 to change theoutput destination is displayed. When an operation of the change button66 is detected, the image editing APP 41 displays a selection list 67.In the selection list 67, the printers 1 registered with the OS 44 aredisplayed. When a print program is selectable as the output destination,the image editing APP 41 also displays the print program in theselection list 67. For example, when the dedicated print control APP 43(which is configured to use the printer 1A: hereinafter, indicated asw/printer 1A) is currently set as the output destination, the imageediting APP 41 displays the printers 1B-1D and the dedicated printcontrol APP 43 (w/printer 1A) in the selection list 67 when theoperation of the change button 66 is detected. Therefore, even when theoutput destination has been set to the dedicated print control APP 43(w/printer 1A) before printing, the image editing APP 41 can change theoutput destination, at the time of printing (immediately beforeprinting), from the dedicated print control APP 43 (printer 1A) to, forexample, the printer 1B.

The print setting field 65 is for setting various print items. The printbutton 63 is a button through which a print execution instruction isinput. The cancel button 64 is a button through which a printtermination instruction is input.

For example, when an operation of the print button 63 is detected withthe dedicated print control APP 43 (w/printer 1A) being displayed in theoutput destination display field 61, the image editing APP 41 receives aprint execution instruction using the dedicated print control APP 43(w/printer 1A) (S7). Then, the image editing APP 41 obtains thededicated print control APP 43 (w/printer 1A) as the output destination(S8). Then, the image editing APP 41 transmits a startup instruction(S9) to the dedicated print control APP 43 obtained in S8. At thisstage, the image editing APP 41 delivers currently editing image file tothe dedicated print control APP 43 (S10). The image file is an exampleof a print job.

The dedicated print control APP 43 is started up in accordance with thestartup instruction received from the image editing APP 41 (S11). Thededicated print control APP 43 displays a print instruction receptionscreen (S12), and when the print execution instruction is receivedthrough the print instruction reception screen (S13), the dedicatedprint control APP 43 rasterizes the image file delivered by the imageediting APP 41 (S14) and transmits the print job to the printer 1A(S15). That is, the image editing APP 41 causes the printer 1A to printthe image file using the first path.

In contrast, when detecting the operation of the print button 63 withthe printer 1B being displayed on the output destination display field61, the image editing APP 41 receives a print execution instructionusing the general purpose control program 45 (S7). Then, the imageediting APP 41 obtains, as the output destination, the printer 1B (S8).Then, the image editing APP 41 outputs the edited image file to theprinter 1B through the general purpose control program 45. The printer1B rasterizes the currently edited image file, and performs printing.That is, the image editing APP 41 causes the printer 1B to print theimage file through the second path.

As described above, the PC 2 is configured such that, when the imagewhich is to be edited with use of the image editing APP 41, the useroperates the shortcut key (i.e., the simultaneous operation of the“Command”, “Alt” and “P” keys) of the keyboard 25. According to thisconfiguration, the PC 2 can set the dedicated print control APP 43 whichhas not been registered with the OS 44 as the output destination andstart up the same. Accordingly, the PC 2 enables the user to perform aselection of the printer 1A, or a startup operation of the dedicatedprint control APP 43 easily. Thus, the print selection operation tooutput the print job to the printer 1A can be simplified.

Next, referring to a flowchart shown in FIG. 7, a printing processexecuted by the PC 2 to realize the afore-mentioned printing operationin the print system 100 will be described. the printing process isexecuted by the CPU 21 of the PC 2 in response to the operation of theshortcut key (i.e., the simultaneous operation of the “Command”, “Alt”and “P” keys) during execution of the image editing APP 41, that is, inresponse to detection of the output destination switching command toswitch the output destinations. The printing process is a processincluded in the image editing APP 41. It is noted that a process ofdetecting the output destination switching command based on theoperation of the shortcut key (i.e., the simultaneous operation of the“Command”, “Alt” and “P” keys) is an example of the first detectingprocess.

In FIG. 7, the CPU 21 firstly obtains a list of the printers 1registered with the OS 44 from the OS 44 (S101). Then, the image editingAPP 41 obtains all the printers 1 which can perform printing in thesecond path, regardless of manufactures of the printers. Further, theCPU 21 obtains a list of the print programs installed in the PC 2 fromthe non-volatile memory 24 (S102). The print program includes thededicated print control APP 43. The list of the print programs may beobtained, for example, from the OS 44, or may be obtained referring to aparticular directory storing the print programs. As above, the imageediting APP 41 obtains all the printers 1 capable of performing printingin the first path. It is noted that an execution order of S101 and S102may be reversed. A process of S101 is an example of a printer obtainingprocess, and a process of S102 is an example of a program obtainingprocess.

Thereafter, the CPU 21 stores the list of the printers 1 obtained inS101 and the list of the print programs obtained in S102 in the RAM 23(S103). Concretely, for example, the CPU 21 stores identifiers of theprinters 1 listed in the list and obtained in S101 and identifiers ofthe print programs listed in the list obtained in S102 in an arraydefined in the RAM 23. Step S103 is an example of a storing process.

Then, the CPU 21 extracts one printer or one print program from amongthe printers 1 and the print programs based on the identifiers thereofstored in the RAM 23, and set the same to a changed output destination(S104). For example, in the array defined in the RAM 23, an outputdestination which is listed next to the output destination before thechange is extracted (based on the identifiers). Then, the names of theprinters 1 and print programs stored in the array are identified basedon the identifiers and displayed on the display 26 as a list (S105).Concretely, the CPU 21 extracts the identifiers of the printers 1 andprint programs stored in the array, and displays the names correspondingto all the extracted identifiers on the output destination changingscreen 50 in the order of arrangement in the array. It is noted that theCPU 21 may display each particular numbers of output destinations in thearranged order in the array. Alternatively, the CPU 21 may display theoutput destinations one by one in the arranged order in the array. StepsS104 and S105 are examples of the output destination changing process.

The CPU 21 may adjust the array of the printers 1 and the printprograms. For example, the CPU 21 may store execution history of printjobs in the non-volatile memory 24. Then, when the printers 1 and theprint programs (i.e., the identifiers thereof) are arranged in thearray, the CPU 21 may arrange the same in a descending order of usagefrequency thereof based on the execution history. According to such aconfiguration, the printers 1 or the print programs of which usagefrequencies are high are arranged at higher hierarchy and the user canselect the same easily. That is, the user operability in setting theoutput destination is improved. In the above description, the executionhistory is managed by the image editing APP 41, but the executionhistory may be managed by the OS 44.

When a particular printing medium is selected as a type of the printingmedium, the CPU 21 excludes, from among the printers 1 and printprograms stored in the RAM 23 (i.e., stored in the array), ones whichcannot perform printing on the particular printing medium so that theyare not displayed on the output destination changing screen 50 shown inFIG. 5. For example, when the image editing APP 41 generates an imagefile, and the printing medium should have a large size (e.g., A3 size),if the user inadvertently sets a printer 1 which cannot print alarge-size image as the output destination, that printing may be failed.Therefore, the CPU 21 excludes the printers 1 (e.g., the printer 1C or1D) or printing programs which cannot print a large-size image fromcandidates to be extracted as the output destinations. According to sucha configuration, only printers which can print large-size imagesappropriately are displayed on the output destination changing screen50. Therefore, it becomes possible for the user to avoid selectinginappropriate printers, and to avoid failure of printing.

The CPU 21 determines whether the output destination is changed from theprinter 1 to the print program (S106). When the output destination ischanged from the printer 1 to the print program (S106: YES), the CPU 21obtains, from the OS 44, print settings of a change source printer 1 andapply the same to the change destination print program (S107).Concretely, the CPU 21 retrieves a file storing default settings of theprint program and rewrites the default settings of the print program inaccordance with the print settings of the change source printer 1. Asthe previous print settings for the change source printer 1 are takenover by the print settings of the print program, it is possible toavoid, when the printing is performed with use of the print program, thesame print settings are used, and usability of the print program isimproved. Thereafter, the CPU 21 terminates the process. Steps S106 andS107 are examples of a take-over process.

When the output destination is not changed from the printer 1 to theprint program (S106: NO), the CPU 21 does not execute S107 andterminates the process. For example, when the output destination ischanged from a certain print program to a dedicated print control APP43, or when the output destination is changed from the printer 1C to theprinter 1B, the process is terminated without taking over the printsettings. It is noted that, at every detection of the output destinationswitching command to switch the output destination by an operation ofthe shortcut keys (i.e., “Command”, “Alt” and “P” keys), a process ofS101-S107 is performed, and switching of the output destinations areperformed.

When a print command is detected, the image editing APP 41 executes aprinting process shown in FIG. 8. For example, when detecting thesimultaneous operation of the “Command” key and the “P” key of thekeyboard 25, the image editing APP 41 detects the print command.Detection of the print command as the “Command” and “P” keys of thekeyboard 25 is an example of a second receiving process.

When detecting the print command, the CPU 12 make the display 26 displaya print screen 60 as shown in FIG. 6 on the display 26 (S201). Then, theCPU 21 determines whether the print execution instruction is received(S202). A process of S202 is an example of a first receiving process.When, for example, a cancel button 64 (FIG. 6) is clicked by the mouse28 and no print instruction is received (S202: cancel instruction), theCPU 21 terminates the process.

When the print button 63 (FIG. 6) is clicked by the mouse 28, the CPU 21determines that the print execution instruction is received (S202: printexecution instruction). In this case, the CPU 21 determines whether theoutput destination is the printer 1 or the print program (S203).

When it is determined that the output destination is the printer 1(S203: printer), the CPU 21 output the print job to the outputdestination (i.e., the printer 1) (S204). For example, when the outputdestination is set to the “printer 1B”, the CPU 21 outputs the print jobto the printer 1B through the general purpose print control program 45.The printer 1B rasterizes the print job received from the PC 2 andperforms printing. Thereafter, the CPU 21 terminates the process.

When it is determined that the output destination is the print program(S203: print program), the CPU 21 starts up the print program which isselected as the output destination (S205). A process of S205 is anexample of a program startup process. For example, when the outputdestination is set to the “dedicated print control APP 43”, the CPU 21starts up the dedicated print control APP 43. According to thisconfiguration, the user is not required to input the startup instructionfor the dedicated print control APP 43 (e.g., to operate a startup iconof the dedicated print control APP 43 displayed on the desktop). Thatis, with a normal operation of the image editing APP 41, that is, withan operation when printing is performed with use of the print 1B and thelike, the user can select the dedicated print control APP 43 and the CPU21 starts up the dedicated print control APP 43.

Thereafter, the CPU 21 delivers the print jobs such as an image file tothe print programs, which has been started (S206), and terminates thesame. A process shown in FIG. 8 is an example of a printing process.

The print program that has received the print job (e.g., the dedicatedprint control APP 43) displays a print instruction receiving screen onthe display 26 of the PC 2. In response to the print instruction throughthe print instruction receiving screen, the print program (e.g., thededicated print control APP 43) rasterizes the print job and output thesame to the printer 1. In response to receipt of the print job from theprint program, the printer immediately starts printing.

As described above in detail, the image editing APP 41 stores a list ofthe printers 1 and the print programs, and when input of the shortcutkey (e.g., a simultaneous operation of “Command”, “Alt” and “P” keys) isdetected, one of the printers 1 and the print programs is selected as anupdated output destination. When the updated output destination is oneof the print programs installed in the PC 2, the image editing APP 41starts up the print program. That is, the image editing APP 41 defines ashortcut key for changing the output destination and the print programsare included as candidate output destinations such that the printprogram can be started by operating the shortcut key. According to thisconfiguration, the image editing APP 41 can make the user easily performselecting a printer 1 or starting up a print program. Thus, theselection operation of a printer to which the print job is output can besimplified.

Second Embodiment

Next, a print system according to a second embodiment will be described,referring to FIGS. 9A, 9B and 10. The print system 100 according to thesecond embodiment includes, similarly to the first embodiment, aprinting device and information processing device which arecommunicatable with each other.

Specifically, the print system 100 according to the second embodimenthas the same configuration as that of the first embodiment except thatimage editing APP's 411 and 412 are installed in the PC 2. Accordingly,in the following description, portions different from those of the firstembodiment will be mainly described, while the similar portions will besimplified or omitted with use of the same reference numbers as used inthe first embodiment.

When, for example, the output destination is changed (S6) as shown inFIGS. 9A and 9B, the image editing APP 41 notifies the OS 44 of thechange of the output destination (S21), and causes the OS 44 to updatethe output destination (S22). For example, the image editing APP 411does not change a default output destination of the image editing APP411, but changes a default output destination of the OS 44 to thechanged output destination which has been changed by the image editingAPP 411. In this case, it is assumed that the OS 44 can set the outputdestination to the print program (including the dedicated print controlAPP 43) as the default output destination. Steps S6, S21 and S22 areexamples of a default changing process and an output destinationchanging process.

When the print execution instruction is received (S7), the image editingAPP 411 requests the OS 44 to transmit the identifier of the defaultdestination (S23). The image editing APP 411 obtains the default outputdestination from the OS 44 (S24). It is noted that, when the obtaineddefault destination is the dedicated print control APP 43, the imageediting APP 411 transmits the startup instruction and the image file tothe dedicated print control APP 43 (S9 and S10). Processes thereafterare similar to those described above with reference to the firstembodiment and description thereof will be omitted. The process in S24is an example of an output destination obtaining process.

When the print execution instruction is received (S31), the imageediting APP 411 and another image editing APP 412 request the OS 44 totransmit the identifier of the default destination (S32) and obtain theidentifier of the default output destination from the OS 44 (S33). Inthis case, the OS 44 has changed the default output destination to thededicated print control APP 43 in accordance with the changenotification by the image editing APP 411. Therefore, the image editingAPP 412 can start the dedicated print control APP 43 without operatingthe shortcut key (S41). The processes of S41-S46 are similar to theprocesses in S9-S14 described above and the detailed description thereofwill be omitted. The processes of S9 and S41 are examples of a printprogram startup process.

Next, a case where the PC 2 executes the image editing APP 411 toperform the printing process will be described, referring to FIG. 10. Itis note that a detailed description of the processes are the same asthose in the first embodiment will be omitted.

When receiving the output destination changing instruction, the CPU 21changes the default output destination registered with the OS 44 to thechanged output destination which has been changed in S104 (S301). Forexample, the CPU 21 registers the dedicated print control APP 43 withthe OS 44 as the default printer. The process in S301 is an example of adefault changing process. Further, the processes in S104 and S301 areexamples of an output destination changing process.

As described above, by changing the default printer of the OS 44, itbecomes possible that the print system 100 reflects the outputdestination chanted by the image editing APP 411 to the other imageediting APP 412. That is, it becomes possible that a process of changingthe output destination with the image editing APP 412 can be omitted.Therefore, the image editing APP 411 can simplify a selecting operationto select a printer to which the other image editing APP 412 outputs theprint job. Accordingly, the image editing APP 412 may a general purposeimage editing APP. Even if such an APP is used, printing with executionof the dedicated print control APP 43 can be performed without requiringa troublesome operation of the user.

It is noted that the configuration of the second embodiment describedabove is only an example, which is not intended to limit aspects of thepresent disclosures. Accordingly, configurations of the presentdisclosures could be modified and/or improved in various ways withoutdeparting from the aspects of the disclosures. For example, the printer1 may not be provided with the operation panel 13. A large-capacitystorage device provided to the PC 2 need not be limited to thenon-volatile memory 24, but any kind of large-capacity storage devicemay be provided.

Further, the printer 1 could be a device capable of printing onlymonochromatic images. In such a case, the PC 2 may be configured not todisplay selectable options on a color setting regardless of kinds ofobjects.

Still further, the communication method between the printer 1 and the PC2 need not be limited to the wireless communication compliant with theWi-Fi standard. The communication method may be a wired communicationmethod using, for example, a USB cable, or a wireless communicationmethod compliant with the Bluetooth® or other standards. The printer 1and the PC 2 may have a plurality of communication functions.

The image file subject to be printed may be a label image file to beprinted on a label, a PDF file, a compressed file such as a JPEG file, abitmap file and the like. Further, the image editing APP 41 and theprint program corresponding to the format of the image file subject tobe printed may be used.

According to the present embodiment, the rasterization is performed bythe printer 1 in the second path, but the what is necessary is that thesecond path is different from the first path, and the rasterization maybe performed by the PC 2 in the second path. For example, when thegeneral purpose print control program 45 has a rasterizing function, therasterization may be performed with use of the rasterizing function ofthe general purpose print control program 45. Alternatively, even in thefirst path, the rasterization may be performed by the printer 1. In suchcase, algorithms of rasterization are different in the first path andthe second path. Further, in such a case, the first path is a printingpath in which the print control function of the OS 44 is not used, whilethe second path is a printing path in which the print control functionof the OS 44 is used.

The present embodiments are described in assumption that there are twotypes of printing paths (i.e., the first path and the second path).However, there could be one or more additional paths. Examples of otherpaths may include a printing path using a dedicated driver or a printingpath using CUPS which is a printer driver for Unix, MacOS and Linux®.The dedicated driver or the CUPS are implemented in the OS 44 of the PC2 (see FIG. 2) and perform rasterizing of the image data.

For example, startup of the print program which is set as the changedoutput destination may not be done when the print instruction isreceived. That is, the print program may be started before the printinstruction is received. It is noted, however, by starting the printprogram at the time of receiving the print instruction, a time periodrequired to perform the printing process can be shortened. Further, thenumber of processes the CPU 21 should perform can be restricted, therebyprocessing load to the CPU 21 being reduced.

According to the above-described embodiments, every time when theshortcut key is input, the output destination is changed in accordancewith the order of the candidates stored in the array. Such aconfiguration may be modified such that, for example, after storing thelist of the printers 1 and the print programs in the RAM 23, they may bedisplayed on the screen so that one of the candidates (i.e., theprinters 1 and the print programs) can be selected with use of the mouse28 and/or keyboard 25. Alternatively, the user may be required tomanually input the output destination to be set. It is noted, however,by configuring the print system 100 such that the output destination isswitched, the output destination is set, or a list of candidates isdisplayed on the screen so that the user can select one of the candidateas the changed output destination, the user can easily set the outputdestination.

When the image editing APP 41 is configured such that a shortcut key forchanging the output destination can be set, all the print programsinstalled in the PC 2 may be displayed on the output destinationchanging screen 50, regardless of the manufacturers of the printers 1,and the user is allowed the select any one of the displayed programs.

For example, the shortcut key may not include a shortcut key for theprint instruction. For example, the shortcut key may be one totallydifferent from the print instruction shortcut key (e.g., simultaneousoperation of “Command” key and “P” key). That is, the shortcut key maybe, for example, a simultaneous operation of “F11” and “Alt” keys. It isnoted, however, by defining the shortcut key so as to include the printinstruction shortcut key (e.g., “Command” and “P” keys), the user caneasily remember the shortcut key to select a printer 1.

For example, the processes of S106 and S107 may be omitted. It is noted,however, by including the processes of S106 and S107, it becomespossible to take over the print settings when printing was performedwith use of the printer 1 as the printing setting of the print programautomatically. Accordingly, troublesome operations of the user to setthe print settings when the output destination is set to the printprogram can be reduced, thereby usability of the print program beingimproved.

It is noted that the processes described in the embodiments may beperformed by a single CPU, a plurality of CPU's, hardware such as anASIC and/or any combination of the same. Further, the processesdescribed above may be realized by various modes includingcomputer-executable instructions stored in a non-transitorycomputer-readable recording medium, or a method of controlling theinformation processing device.

What is claimed is:
 1. A non-transitory computer-readable recordingmedium for an information processing device having a memory and acontroller, the recording medium storing computer-executableinstructions which cause, when executed, the controller to perform: anobtaining process of obtaining a list including a first outputdestination registered with a destination using a general purpose printfunction of an operating system installed to the information processingdevice and a print program installed in the information processingdevice and a second output destination using a print program installedin the information processing device; a storing process of storingidentifiers of the first output destination and the second outputdestination listed in the list obtained in the obtaining process in thememory; and when the controller detects input of a first user operation,an output destination setting process of setting one of the first outputdestination and the second output destination to an output destinationbased on the identifiers stored in the memory.
 2. The non-transitorycomputer-readable recording medium according to claim 1, wherein theinstructions further cause, when executed, the controller to perform:when the output destination set in the output destination settingprocess is the second output destination, starting the print program, afirst receiving process of receiving an execution command of printingthrough an inputting device of the information processing device; and aprinting process in which: when the execution command is received in thefirst receiving process and when a currently set output destination isthe first output destination, a print job is output to the first outputdestination; and when the currently set output destination is the secondoutput destination, delivers the print job to the print program.
 3. Thenon-transitory computer-readable recording medium according to claim 1,wherein the first output destination is a printer controllable by thegeneral purpose print function of the operating system, and wherein thesecond output destination is the print program installed in theinformation processing device.
 4. The non-transitory computer-readablerecording medium according to claim 1, wherein, when the controllerdetects the first user operation, the controller displays a list of thefirst output destination and the second output destination based on theidentifiers stored in the memory on a displaying device of theinformation processing device.
 5. The non-transitory computer-readablerecording medium according to claim 1, wherein the instructions furthercause, when executed, the controller to: store execution history ofprint jobs in the memory; and based on the execution history of printjobs stored in the memory, determine an order of extraction in adescending order of a usage frequency of the first output destinationand the second output destination.
 6. The non-transitorycomputer-readable recording medium according to claim 1, wherein if aparticular printing medium is being selected as a type of a printingmedium to be used, ones which cannot perform printing on the particularprinting medium are excluded from among the first output destination andthe second output destination of which identifiers are stored in thememory.
 7. The non-transitory computer-readable recording mediumaccording to claim 2, wherein the instructions further cause, whenexecuted, the controller to perform: detecting a second user operationinput through the inputting device; and receiving the execution commandwhen the input of the second user operation is detected, wherein thefirst user operation is an operation of simultaneously performing thesecond user operation and a third user operation.
 8. The non-transitorycomputer-readable recording medium according to claim 1, wherein theinstructions further cause, when executed, the controller to perform,when the output destination is changed from the first output destinationto the second output destination, obtaining default print settings of achange source printer from the operating system of the informationprocessing device, and delivering the obtained print settings to thesecond output destination which is set to the output destination.
 9. Thenon-transitory computer-readable recording medium according to claim 1,wherein the instructions further cause, when executed, the controller toperform, when the output destination is changed, changing the outputdestination from a default printer registered with the operating systemof the information processing device to the changed output destination.10. A method of controlling an information processing device having amemory, comprising: obtaining a list including a first outputdestination registered with a destination using a general purpose printfunction of an operating system installed to the information processingdevice and a print program installed in the information processingdevice and; a second output destination using a print program installedin the information processing device; storing identifiers of theprinters listed in the list of the first output destination and thesecond output destination listed in the list in the memory; when inputof a first user operation is detected, setting one of the first outputdestination and the second output destination to an output destinationto the output destination based on the identifiers stored in the memory.11. The method of claim 10, when the output destination is the secondoutput destination, starting the print program; receiving an executioncommand of printing through an inputting device of the informationprocessing device; when the execution command is received and when acurrently set output destination is the first output destination, aprint job is output to the first output destination; and when thecurrently set output destination is the second output destination, theprint job is delivered to the print program.
 12. The method of claim 10,wherein the first output destination is a printer controllable by thegeneral purpose print function of the operating system, and wherein thesecond output destination is the print program installed in theinformation processing device.
 13. The method of claim 10, furthercomprising displaying a list of the first output destination and thesecond output destination based on the identifiers stored in the memoryon a displaying device of the information processing device when thefirst user operation is detected.
 14. The method of claim 10, furthercomprising storing execution history of print jobs in the memory; andbased on the execution history of print jobs stored in the memory,determining an order of extraction in a descending order of a usagefrequency of the first output destination and the second outputdestination.
 15. The method of claim 10, wherein if a particularprinting medium is being selected as a type of a printing medium to beused, ones which cannot perform printing on the particular printingmedium are excluded from among the first output destination and thesecond output destination of which identifiers are stored in the memory.16. The method of claim 11, further comprising: detecting a second useroperation is input through the inputting device; and receiving theexecution command when the input of the second user operation isdetected, wherein the first user operation is an operation ofsimultaneously performing the second user operation and a third useroperation.
 17. The method of claim 10, further comprising: obtaining,when the output destination is changed from the first output destinationto the second output destination, default print settings of a changesource printer from an operating system of the information processingdevice; and delivering the obtained print settings to the second outputdestination which is set to the output destination.
 18. The method ofclaim 10, further comprising changing the output destination from adefault printer registered with the operating system of the informationprocessing device to the changed output destination when the outputdestination is changed.